package com.fupeng.liuke;


import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

/**
 * Created by lecky on 2016/7/31 0031.
 */
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        List<Integer> list = new ArrayList<>();
        int nums = Integer.parseInt(sc.nextLine());
        String[] strs = sc.nextLine().split(" ");
        for(int i=0;i<strs.length;i++)
            list.add(Integer.parseInt(strs[i]));
        Collections.sort(list);
        for(int i=1;i<=100000;i++){
            if(list.contains(i))
                continue;
            //首先找出i在数组中的位置
            int index = finIndex(list,i);
            if(!ifIsRequire(i,index,list)) {
                System.out.println(i);
                return;
            }
        }
    }

    /**
     * 找出j在数组中的位置
     * @param list
     * @param j
     * @return
     */
    private static int finIndex(List<Integer> list, int j) {
        for(int i=0;i<list.size()-1;i++){
            if(list.get(i)<j && j<list.get(i+1))
                return i;
        }
        return -1;
    }

    /**
     * 判断i是否可以由list中前index个元素任意组合相加得到
      *
    * @param list
     * @return
     */
    private static boolean ifIsRequire(int i, int index, List<Integer> list) {
        if(i==0)
            return true;
        if(index<0||i<1)
            return false;
        return ifIsRequire(i-list.get(index),index-1,list)|| ifIsRequire(i,index-1,list);
    }
}
